﻿using System.Collections.Generic;
using ZilLion.Service.WeChatMall.Domain.Entitys.GsInfo;
using ZilLion.Service.WeChatMall.Domain.Responses.GsInfo;

namespace ZilLion.Service.WeChatMall.Domain.Services.Interface
{
    public interface IGsService
    {
        #region 微商城展示

        IList<GsFrontTreeDto> GetFrontGsTree(long shopid);

        #endregion

        #region 分组相关

        IList<GsGroupEntity> GetGroupList(string zlcompanykey);
        GsGroupEntity SaveGroup(GsGroupEntity entity);
        GsGroupEntity GetGroupById(long id);
        void RemoveGroup(long id);

        #endregion

        #region 货品设置相关

        GoodSetDto GetGsInfoDto(long gsid);
        GoodSetDto SaveBasicGsInfo(GsBasicInfoEntity basic, GsGroupRelationShipEntity relastionShip);
        IList<GoodSetDto> GetGoodsByGroup(long groupid);
        IList<GoodSetDto> GetAllGoods();
        IList<GoodSetDto> GetGoodsByAppid(string appid);
        IList<GoodSetDto> GetGoodsByShopid(long shopid);
        void DeleteGood(long gsid);
        IList<OfflineGsEntity> GetImportableGs(string zlcompanykey);
        void ImportOfflineGs(IList<OfflineGsEntity> entity, string zlcompanykey, long updater, long groupId);

        #endregion
    }
}